摘要 :
Предлагается описание формальных компонентов оценки качества программных средств. Представлены модели программных средств...
展开
Предлагается описание формальных компонентов оценки качества программных средств. Представлены модели программных средств, качества и метрик программных средств. В качестве формальной основы моделей используются теория категорий и теория графов. В рамках описываемого подхода с помощью модели качества осуществляется концептуальное моделирование понятия качества программных средств и обеспечивается количественная оценка качества с помощью модели метрик.
收起
摘要 :
Software maintenance is an expensive activity that consumes a major portion of the cost of the total project. Various activities carried out during maintenance include the addition of new features, deletion of obsolete code, corre...
展开
Software maintenance is an expensive activity that consumes a major portion of the cost of the total project. Various activities carried out during maintenance include the addition of new features, deletion of obsolete code, correction of errors, etc. Software maintainability means the ease with which these operations can be carried out. If the maintainability can be measured in early phases of the software development, it helps in better planning and optimum resource utilization. Measurement of design properties such as coupling, cohesion, etc. in early phases of development often leads us to derive the corresponding maintainability with the help of prediction models. In this paper, we performed a systematic review of the existing studies related to software maintainability from January 1991 to October 2015. In total, 96 primary studies were identified out of which 47 studies were from journals, 36 from conference proceedings and 13 from others. All studies were compiled in structured form and analyzed through numerous perspectives such as the use of design metrics, prediction model, tools, data sources, prediction accuracy, etc. According to the review results, we found that the use of machine learning algorithms in predicting maintainability has increased since 2005. The use of evolutionary algorithms has also begun in related sub-fields since 2010. We have observed that design metrics is still the most favored option to capture the characteristics of any given software before deploying it further in prediction model for determining the corresponding software maintainability. A significant increase in the use of public dataset for making the prediction models has also been observed and in this regard two public datasets User Interface Management System (UIMS) and Quality Evaluation System (QUES) proposed by Li and Henry is quite popular among researchers. Although machine learning algorithms are still the most popular methods, however, we suggest that researchers working on software maintainability area should experiment on the use of open source datasets with hybrid algorithms. In this regard, more empirical studies are also required to be conducted on a large number of datasets so that a generalized theory could be made. The current paper will be beneficial for practitioners, researchers and developers as they can use these models and metrics for creating benchmark and standards. Findings of this extensive review would also be useful for novices in the field of software maintainability as it not only provides explicit definitions, but also lays a foundation for further research by providing a quick link to all important studies in the said field. Finally, this study also compiles current trends, emerging sub-fields and identifies various opportunities of future research in the field of software maintainability.
收起
摘要 :
A new methodology of measuring software complexity is proposed based on program decomposition mechanisms. The purpose of our research is to improve the quality and reliability of software by using a good measurement of the complex...
展开
A new methodology of measuring software complexity is proposed based on program decomposition mechanisms. The purpose of our research is to improve the quality and reliability of software by using a good measurement of the complexity of the software. Thus software development cost can be reduced due to the fewer errors introduced.
收起
摘要 :
Software quality is the fundamental requirement for a user, academia person, software developing organizations and researchers. In this paper a model for object-oriented Software Bug Prediction System (SBPS) has been developed. Th...
展开
Software quality is the fundamental requirement for a user, academia person, software developing organizations and researchers. In this paper a model for object-oriented Software Bug Prediction System (SBPS) has been developed. This model is capable of predicting the existence of bugs in a class if found, during software validation using metrics. The designed model forecasts the occurrences of bugs in a class when any new system is tested on it. For this experiment some open source similar types of defect datasets (projects) have been collected from Promise Software Engineering Repository. Some of these datasets have been selected for prediction of bugs, of which a few are not involved in model construction. First of all, we have formulated some hypotheses corresponding to each and every metric, and from metrics validation based on hypothesis basis finally 14 best suitable metrics have been selected for model creation. The Logistic Regression Classifier provides good accuracy among all classifiers. The proposed model is trained and tested on each of the validated dataset, including validated Combined Dataset separately too. The performance measure (accuracy) is computed in each case and finally it is found that the model provides overall averaged accuracy of 76.27%.
收起
摘要 :
According to the research progress of software networks in these years, the software structural networks show the same characteristics with complex networks and the software topological structure has an effect on the quality chara...
展开
According to the research progress of software networks in these years, the software structural networks show the same characteristics with complex networks and the software topological structure has an effect on the quality characteristics of software systems. The research work begins with the statistics analysis of three characteristic values, which can reflect the efficiency, complexity and orderliness of software systems separately, of 500 open source software systems. Then D(AP), D(AD) and D(E) are presented for measuring the quality characteristics of software systems refer to the definition of deviation of characteristic value and quality characteristics relative to software scale. By testing on seven Linux kernels of different versions, the metrics on software networks based on deviation of characteristic values is validated effective.
收起
摘要 :
This article describes the history and definition of two important but generally under-utilized software metrics: cost of (poor) quality (CoQ) and defect containment. The CoQ metric measures efficiency, and defect containment meas...
展开
This article describes the history and definition of two important but generally under-utilized software metrics: cost of (poor) quality (CoQ) and defect containment. The CoQ metric measures efficiency, and defect containment measures effectiveness of alternative appraisal strategies. Industry benchmark data for these metrics and for alternative appraisal methods are reviewed. An approach to modeling and managing efficiency and effectiveness that incorporates both prospective (leading) and retrospective (lagging) indicators is described. This model facilitates "simulation" of alternative strategies and provides quantitative indications of the impact of alternatives under consideration.
收起
摘要 :
The mean magnitude of relative error, MMRE, is probably the most widely used evaluation criterion for assessing the performance of competing software prediction models. One purpose of MMRE is to assist us to select the best model....
展开
The mean magnitude of relative error, MMRE, is probably the most widely used evaluation criterion for assessing the performance of competing software prediction models. One purpose of MMRE is to assist us to select the best model. In this paper, we have performed a simulation study demonstrating that MMRE does not always select the best model. Our findings cast some doubt on the conclusions of any study of competing software prediction models that use MMRE as a basis of model comparison. We therefore recommend not using MMRE to evaluate and compare prediction models. At present, we do not have any universal replacement for MMRE. Meanwhile, we therefore recommend using a combination of theoretical justification of the models that are proposed together with other metrics proposed in this paper.
收起
摘要 :
Previous work on the relationship between the McCabe complexity metric and lines of code fails to recognise that such data are discrete. A discrete probability model is proposed which enables outliers to be detected, and offers in...
展开
Previous work on the relationship between the McCabe complexity metric and lines of code fails to recognise that such data are discrete. A discrete probability model is proposed which enables outliers to be detected, and offers information about parameters meaningful to the software engineer.
收起
摘要 :
In this paper, I discuss what I believe is the grand challenge facing the software quality research community: the ability to accurately determine, in the very earliest stages of development, the techniques that will be needed to ...
展开
In this paper, I discuss what I believe is the grand challenge facing the software quality research community: the ability to accurately determine, in the very earliest stages of development, the techniques that will be needed to achieve desired levels of non-functional attributes such as: reliability, availability, fault tolerance, testability, maintainability, performance, software safety, and software security. I will further consider the associated technical and economic tradeoffs that must be made in order to: (1) achieve these desired qualities, and (2) to certify that these qualities will be exhibited when the software is deployed. And I will also take into account the fact that satisfying a particular level of each attribute requires specific expenditures, some of these attributes conflict with each other, and when the environment or usage profile of the software is modified, all guarantees or claims of quality should be viewed suspiciously until additional evidence is provided.
收起
摘要 :
An important problem that arises in the testing of software programs is that given piece of source code is reliable or not. Software reliability is an important segment of software quality. So software reliability must be quantifi...
展开
An important problem that arises in the testing of software programs is that given piece of source code is reliable or not. Software reliability is an important segment of software quality. So software reliability must be quantified. Quantification refers to measurement. A number of software metrics and statistical reliability models have emerged during the past four decades but no model can solve the issue. In this paper, we conduct a survey on various software reliability metrics and models.
收起